function reconstructed_message = reconstruct_message(common_part, private_part, common_ratio)
% reconstruct_message - 将公共部分和私有部分重新组合为原始消息
%
% 输入参数:
%   common_part  - 解码后的公共部分比特
%   private_part - 解码后的私有部分比特
%   common_ratio - 公共部分比例，用于验证长度
%
% 输出参数:
%   reconstructed_message - 重构后的完整消息

% 获取公共部分和私有部分的长度
common_length = length(common_part);
private_length = length(private_part);

% 计算预期的总消息长度
total_length = common_length + private_length;

% 验证长度比例是否与参数一致
expected_common_length = round(total_length * common_ratio);
if common_length ~= expected_common_length
    warning('公共部分长度(%d)与预期长度(%d)不一致', common_length, expected_common_length);
end

% 重构消息 - 简单拼接公共部分和私有部分
reconstructed_message = [common_part, private_part];

% 在实际系统中，可能需要更复杂的重构过程，特别是当消息分割不是简单的前后划分时
% 例如，可能需要解析特定的头信息来确定如何重组消息

end 